package com.ayu.shortlink.admin.service;

import com.ayu.shortlink.admin.dao.entity.CouponTaskDO;
import com.ayu.shortlink.admin.dto.req.CouponTaskCreateReqDTO;
import com.ayu.shortlink.admin.dto.req.CouponTaskPageQueryReqDTO;
import com.ayu.shortlink.admin.dto.req.UserExcelCreateReqDTO;
import com.ayu.shortlink.admin.dto.resp.CouponTaskPageQueryRespDTO;
import com.ayu.shortlink.admin.dto.resp.CouponTaskQueryRespDTO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

public interface CouponTaskService extends IService<CouponTaskDO> {
    /**
     * 创建优惠券任务
     * @param requestParam 创建优惠券模版请求参数
     */
    void createCouponTask(CouponTaskCreateReqDTO requestParam);

    /**
     * 根据 ID 查询优惠券任务详情
     * @param couponTaskId 优惠券任务 ID
     * @return 优惠券任务详情
     */
    CouponTaskQueryRespDTO queryCouponTask(String couponTaskId);

    /**
     * 分页查询优惠券任务
     * @param requestParam 分页查询条件
     * @return 分页查询结果
     */
    IPage<CouponTaskPageQueryRespDTO> pageQueryCouponTask(CouponTaskPageQueryReqDTO requestParam);

    /**
     * 创建发送的Excel表格
     * @param requestParam 商家ID
     */
    void createUserExcel(UserExcelCreateReqDTO requestParam);
}
